package cn.zkw.util;

public class BobingUtil {
    public String bobingResult(Integer[] arr){
        String result = null;
        while (true){
            result = isChajinghua(arr);
            if (result!=null) break;
            result = isBiandijing(arr);
            if (result!=null) break;
            result = isHongliubo(arr);
            if (result!=null) break;
            result = isHeiliubo(arr);
            if (result!=null) break;
            result = isWuhong(arr);
            if (result!=null) break;
            result = isWuzidengke(arr);
            if (result!=null) break;
            result = isSihong(arr);
            if (result!=null) break;
            result  = isBanyang(arr);
            if (result!=null) break;
            result = isTanhua(arr);
            if (result!=null) break;
            result = isJingshi(arr);
            if (result!=null) break;
            result = isJuren(arr);
            if (result!=null) break;
            result = isXiucai(arr);
            if (result!=null) break;
        }
        return result;
    }

    //状元_插金花
    public String isChajinghua(Integer[] arr){
        int n_4 = 0;
        int n_1 = 0;
        for(int i=0;i<arr.length;i++){
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==1){
                n_1+=1;
            }
        }
        if(n_4==4 && n_1==2){
            return "状元_插金花";
        }
        return null;
    }

    //状元_红六勃
    public String isHongliubo(Integer[] arr){
        int n_4=0;
        for(int i=0;i<arr.length;i++){
            if(arr[i]==4){
                n_4+=1;
            }
        }
        if(n_4==6){
            return "状元_红六勃";
        }
        return null;
    }

    //状元_遍地锦
    public String isBiandijing(Integer[] arr){
        int n_1=0;
        for(int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
        }
        if(n_1==6){
            return "状元_遍地锦";
        }
        return null;
    }

    //状元_黑六勃
    public String isHeiliubo(Integer[] arr){
        int n_1 = 0;
        int n_2 = 0;
        int n_3 = 0;
        int n_4 = 0;
        int n_5 = 0;
        int n_6 = 0;
        for (int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
            if(arr[i]==2){
                n_2+=1;
            }
            if(arr[i]==3){
                n_3+=1;
            }
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==5){
                n_5+=1;
            }
            if(arr[i]==6){
                n_6+=1;
            }
        }
        if(n_2==6 || n_3==6 || n_5==6 || n_6==6){
            return "黑六勃";
        }
        return null;
    }

    //状元_五红
    public String isWuhong(Integer[] arr){
        int n_4 = 0;
        for(int i=0;i<arr.length;i++){
            if(arr[i]==4){
                n_4+=1;
            }
        }
        if(n_4==5){
            return "状元_五红";
        }
        return null;
    }

    //状元_五子登科
    public String isWuzidengke(Integer[] arr){
        int n_1 = 0;
        int n_2 = 0;
        int n_3 = 0;
        int n_4 = 0;
        int n_5 = 0;
        int n_6 = 0;
        for (int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
            if(arr[i]==2){
                n_2+=1;
            }
            if(arr[i]==3){
                n_3+=1;
            }
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==5){
                n_5+=1;
            }
            if(arr[i]==6){
                n_6+=1;
            }
        }
        if(n_1==5 || n_2==5 ||n_3==5 || n_5==5 || n_6==5){
            return "状元_五子登科";
        }
        return null;
    }

    //状元_四红
    public String isSihong(Integer[] arr){
        int n_1 = 0;
        int n_2 = 0;
        int n_3 = 0;
        int n_4 = 0;
        int n_5 = 0;
        int n_6 = 0;
        for (int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
            if(arr[i]==2){
                n_2+=1;
            }
            if(arr[i]==3){
                n_3+=1;
            }
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==5){
                n_5+=1;
            }
            if(arr[i]==6){
                n_6+=1;
            }
        }
        if(n_4==4){
           return "状元_四红";
        }
        return null;
    }

    //榜眼
    public String isBanyang(Integer[] arr){
        int n_1 = 0;
        int n_2 = 0;
        int n_3 = 0;
        int n_4 = 0;
        int n_5 = 0;
        int n_6 = 0;
        for (int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
            if(arr[i]==2){
                n_2+=1;
            }
            if(arr[i]==3){
                n_3+=1;
            }
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==5){
                n_5+=1;
            }
            if(arr[i]==6){
                n_6+=1;
            }
        }
        if(n_1==1 && n_2==1 && n_3==1 && n_4==1 && n_5==1 && n_6==1){
            return "榜眼";
        }
        return null;
    }

    //探花
    public String isTanhua(Integer[] arr){
        int n_4= 0;
        for(int i=0;i<arr.length;i++){
            if(arr[i]==4){
                n_4+=1;
            }
        }
        if(n_4==3){
            return "探花";
        }
        return null;
    }

    //进士
    public String isJingshi(Integer[] arr){
        int n_1 = 0;
        int n_2 = 0;
        int n_3 = 0;
        int n_4 = 0;
        int n_5 = 0;
        int n_6 = 0;
        for (int i=0;i<arr.length;i++){
            if(arr[i]==1){
                n_1+=1;
            }
            if(arr[i]==2){
                n_2+=1;
            }
            if(arr[i]==3){
                n_3+=1;
            }
            if(arr[i]==4){
                n_4+=1;
            }
            if(arr[i]==5){
                n_5+=1;
            }
            if(arr[i]==6){
                n_6+=1;
            }
        }
        if(n_1==4 || n_2==4 ||n_3==4 || n_5==4 || n_6==4){
            return "进士";
        }
        return null;
    }

    //举人
    public String isJuren(Integer[] arr){
        int n_4 = 0;
        for (int i=0;i<arr.length;i++) {
            if(arr[i]==4){
                n_4+=1;
            }
        }
        if(n_4==2){
            return "举人";
        }
        return null;
    }

    //秀才
    public String isXiucai(Integer[] arr){
        int n_4 = 0;
        for (int i=0;i<arr.length;i++) {
            if(arr[i]==4){
                n_4+=1;
            }
        }
        if(n_4==1){
            return "秀才";
        }else if(n_4==0){
            return "没中奖";
        }
        return null;
    }

}
